A fork of pds-dash for selfhosted.social
at main 23 lines 713 B view raw
1import type { RequestHandler } from './$types'; 2import type { At } from '@atcute/client/lexicons'; 3import { json } from '@sveltejs/kit'; 4import { blueskyHandleFromDid } from '$lib/server/identity'; 5 6export const GET: RequestHandler = async ({ params }) => { 7 const { did } = params; 8 9 if (!did || (!did.startsWith('did:plc:') && !did.startsWith('did:web:'))) { 10 return json({ error: 'Invalid DID format' }, { status: 400 }); 11 } 12 13 try { 14 const handle = await blueskyHandleFromDid(did as At.Did); 15 return json({ handle }); 16 } catch (error) { 17 console.error(`Error fetching handle for ${did}:`, error); 18 return json( 19 { error: 'Failed to fetch handle' }, 20 { status: 500 } 21 ); 22 } 23};